package com.ruoyi.gbrz.mapper;

import java.util.List;
import com.ruoyi.gbrz.domain.Gbrz;
import com.ruoyi.gbrz.domain.GbrzFj;

/**
 * 贯标认证Mapper接口
 *
 * @author huacai
 * @date 2024-10-26
 */
public interface GbrzMapper
{
    /**
     * 查询贯标认证
     *
     * @param gbrzId 贯标认证主键
     * @return 贯标认证
     */
    public Gbrz selectGbrzByGbrzId(String gbrzId);

    /**
     * 查询贯标认证列表
     *
     * @param gbrz 贯标认证
     * @return 贯标认证集合
     */
    public List<Gbrz> selectGbrzList(Gbrz gbrz);

    /**
     * 新增贯标认证
     *
     * @param gbrz 贯标认证
     * @return 结果
     */
    public int insertGbrz(Gbrz gbrz);

    /**
     * 修改贯标认证
     *
     * @param gbrz 贯标认证
     * @return 结果
     */
    public int updateGbrz(Gbrz gbrz);

    /**
     * 删除贯标认证
     *
     * @param gbrzId 贯标认证主键
     * @return 结果
     */
    public int deleteGbrzByGbrzId(String gbrzId);

    /**
     * 批量删除贯标认证
     *
     * @param gbrzIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGbrzByGbrzIds(String[] gbrzIds);

    /**
     * 批量删除贯标认证附件
     *
     * @param gbrzIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGbrzFjByGbrzIds(String[] gbrzIds);

    /**
     * 批量新增贯标认证附件
     *
     * @param gbrzFjList 贯标认证附件列表
     * @return 结果
     */
    public int batchGbrzFj(List<GbrzFj> gbrzFjList);


    /**
     * 通过贯标认证主键删除贯标认证附件信息
     *
     * @param gbrzId 贯标认证ID
     * @return 结果
     */
    public int deleteGbrzFjByGbrzId(String gbrzId);

    /**
     * 新增附件
     * @param gbrzFj
     * @return
     */
    int insertGbrzFjByGbrzId(GbrzFj gbrzFj);

    /**
     * 根据ID查询附件列表
     * @param gbrzFj
     * @return
     */
    List<GbrzFj> selectGbrzFjList(GbrzFj gbrzFj);

    /**
     * 批量删除贯标认证附件
     *
     * @param fjIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGbrzFjByFjIds(Integer[] fjIds);
}
